home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / Report Writers / Crystal Repot 9.0 Full CD version / Setup.exe / Windows / System32 / HTMLRE90.DLL / HTML / 11025 < prev    next >
Encoding:
Text File  |  2002-07-05  |  12.5 KB  |  385 lines

  1. <HTML>
  2. <HEAD>
  3.   <LINK REL="stylesheet" TYPE="text/css" HREF="%6css/default.css">
  4. </HEAD>
  5.  
  6. <BODY onLoad="init()" LEFTMARGIN="5" RIGHTMARGIN="5">
  7.  
  8. <DIV ID="tooltip" STYLE="position:absolute;visibility:hidden;z-index:99;"></DIV>
  9.  
  10. <SCRIPT SRC="%6js/helps.js"></SCRIPT>
  11. <SCRIPT SRC="%6js/tips.js"></SCRIPT>
  12.  
  13. <SCRIPT language="JavaScript">
  14.  
  15. function init()
  16. {
  17.     if (document.rptDBLogon.DS.length > 0)
  18.     {
  19.         document.rptDBLogon.DS.options[0].selected = true;
  20.         changeDataSource();
  21.     }
  22.  
  23.     return true;
  24. }
  25.  
  26. function DBInfo( dsName, dbType, dbTypeCustom, db, logonName, password, promptRunTime,
  27.                 useDefault, defaultServer, defaultDB, defaultUser, defaultPassword, isOLAP)
  28. {
  29.     this.dsName = dsName;
  30.     this.db = db;
  31.     this.dbType = dbType;
  32.     this.dbTypeCustom = dbTypeCustom;
  33.     this.logonName = logonName;
  34.     this.password = password;
  35.     this.promptRunTime = promptRunTime;
  36.     this.useDefault = useDefault;
  37.     this.defaultServer = defaultServer;
  38.     this.defaultDB = defaultDB;
  39.     this.defaultUser = defaultUser;
  40.     this.defaultPassword = defaultPassword;
  41.     this.isOLAP = isOLAP;
  42. }
  43.  
  44. var _numItems = %3;
  45. var currentItem;
  46. var dbInfoArray = new Array(_numItems);
  47.  
  48. %4
  49.  
  50. function changeDataSource()
  51. {
  52.     list = document.rptDBLogon.DS;
  53.     if (list.selectedIndex >= 0)
  54.     {
  55.         currentItem = list.selectedIndex;
  56.         var dbInfo = dbInfoArray[currentItem];
  57.  
  58.         document.rptDBLogon.usedefdb.checked = dbInfo.useDefault;
  59.         if ( dbInfo.useDefault )
  60.             document.rptDBLogon.usedefdb[0].checked = true;
  61.         else
  62.             document.rptDBLogon.usedefdb[1].checked = true;
  63.         document.rptDBLogon.DBS.value = dbInfo.dsName;
  64.         document.rptDBLogon.DB.value = dbInfo.db;
  65.         document.rptDBLogon.USR.value = dbInfo.logonName;
  66.         document.rptDBLogon.PWD.value = dbInfo.password;
  67.         document.rptDBLogon.PRT.checked = dbInfo.promptRunTime;
  68.         document.rptDBLogon.defserver.value = dbInfo.defaultServer;
  69.         document.rptDBLogon.defdatabase.value = dbInfo.defaultDB;
  70.         document.rptDBLogon.defuser.value = dbInfo.defaultUser;
  71.         document.rptDBLogon.defpassword.value = dbInfo.defaultPassword;
  72.  
  73.         document.rptDBLogon.customdbdriver.value = "";
  74.  
  75.         var i;
  76.         for ( i = 0; i < document.rptDBLogon.dbdriver.options.length; i++)
  77.         {
  78.             if ( document.rptDBLogon.dbdriver.options[i].value == dbInfo.dbType )
  79.             {
  80.                 document.rptDBLogon.dbdriver.selectedIndex = i;
  81.                 break;
  82.             }
  83.         }
  84.  
  85.         if ( i < document.rptDBLogon.dbdriver.options.length )
  86.         {
  87.             document.rptDBLogon.radiodbdriver[0].checked = true;
  88.         }
  89.         else
  90.         {
  91.             document.rptDBLogon.radiodbdriver[1].checked = true;
  92.             document.rptDBLogon.customdbdriver.value = dbInfo.dbTypeCustom;
  93.         }
  94.  
  95.         changeDefaultDB();
  96.     }
  97. }
  98.  
  99. function changeDefaultDB()
  100. {
  101.     var dbInfo = dbInfoArray[currentItem];
  102.     var isOLAP = dbInfo.isOLAP;
  103.     var isUsingDefault = ( (document.rptDBLogon.usedefdb[0].checked == true) || isOLAP);
  104.  
  105.     dbInfo.useDefault = isUsingDefault;
  106.  
  107.     document.rptDBLogon.usedefdb[1].disabled = isOLAP;
  108.  
  109.     document.rptDBLogon.defuser.disabled = !isUsingDefault;
  110.     document.rptDBLogon.defpassword.disabled = !isUsingDefault;
  111.  
  112.     document.rptDBLogon.dbdriver.disabled = isUsingDefault;
  113.     document.rptDBLogon.DBS.disabled = isUsingDefault;
  114.     document.rptDBLogon.DB.disabled = isUsingDefault;
  115.     document.rptDBLogon.USR.disabled = isUsingDefault;
  116.     document.rptDBLogon.PWD.disabled = isUsingDefault;
  117.     document.rptDBLogon.radiodbdriver[0].disabled = isUsingDefault;
  118.     document.rptDBLogon.radiodbdriver[1].disabled = isUsingDefault;
  119.     document.rptDBLogon.customdbdriver.disabled = isUsingDefault;
  120.  
  121.     changeDriver();
  122. }
  123.  
  124. function removeNSFocus( condition )
  125. {
  126.     // Netscape Navigator 4 doesn't support the disabled property for text input fields
  127.     if ( condition )
  128.         if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) <= 4))
  129.             document.rptDBLogon.DS.focus();
  130. }
  131.  
  132. function focustDefUserOrPwd()
  133. {
  134.     removeNSFocus( document.rptDBLogon.usedefdb[1].checked );
  135. }
  136.  
  137. function focusInput()
  138. {
  139.     removeNSFocus( document.rptDBLogon.usedefdb[0].checked );
  140. }
  141.  
  142. function focusDBTypeSelect()
  143. {
  144.     removeNSFocus( document.rptDBLogon.usedefdb[0].checked || document.rptDBLogon.radiodbdriver[1].checked );
  145. }
  146.  
  147. function focusDBTypeCustom()
  148. {
  149.     removeNSFocus( document.rptDBLogon.usedefdb[0].checked || document.rptDBLogon.radiodbdriver[0].checked );
  150. }
  151.  
  152. function changeDefaultUser()
  153. {
  154.     var dbInfo = dbInfoArray[currentItem];
  155.     dbInfo.defaultUser = document.rptDBLogon.defuser.value;
  156. }
  157.  
  158. function changeDefaultPwd()
  159. {
  160.     var dbInfo = dbInfoArray[currentItem];
  161.     dbInfo.defaultPassword = document.rptDBLogon.defpassword.value;
  162. }
  163.  
  164. function changeDriver()
  165. {
  166.     if ( document.rptDBLogon.radiodbdriver[0].checked  )
  167.         changeDriverSelect();
  168.     else
  169.         changeDriverText();
  170. }
  171.  
  172. function changeDriverSelect()
  173. {
  174.     if ( document.rptDBLogon.usedefdb[1].checked )
  175.     {
  176.         document.rptDBLogon.customdbdriver.disabled = true;
  177.         document.rptDBLogon.dbdriver.disabled = false;
  178.     }
  179.  
  180.     var dbInfo = dbInfoArray[currentItem];
  181.     dbInfo.dbType = document.rptDBLogon.dbdriver[document.rptDBLogon.dbdriver.selectedIndex].value;
  182. }
  183.  
  184. function changeDriverText()
  185. {
  186.     if ( document.rptDBLogon.usedefdb[1].checked )
  187.     {
  188.         document.rptDBLogon.customdbdriver.disabled = false;
  189.         document.rptDBLogon.dbdriver.disabled = true;
  190.     }
  191.  
  192.     var dbInfo = dbInfoArray[currentItem];
  193.     dbInfo.dbType = 1000;
  194.     dbInfo.dbTypeCustom = document.rptDBLogon.customdbdriver.value;
  195. }
  196.  
  197. function changeServer()
  198. {
  199.     var dbInfo = dbInfoArray[currentItem];
  200.     dbInfo.dsName = document.rptDBLogon.DBS.value;
  201. }
  202.  
  203. function changeDB()
  204. {
  205.     var dbInfo = dbInfoArray[currentItem];
  206.     dbInfo.db = document.rptDBLogon.DB.value;
  207. }
  208.  
  209. function changeLogonName()
  210. {
  211.     var dbInfo = dbInfoArray[currentItem];
  212.     dbInfo.logonName = document.rptDBLogon.USR.value;
  213. }
  214.  
  215. function changePassword()
  216. {
  217.     var dbInfo = dbInfoArray[currentItem];
  218.     dbInfo.password = document.rptDBLogon.PWD.value;
  219. }
  220.  
  221. function changeRunTime()
  222. {
  223.     var dbInfo = dbInfoArray[currentItem];
  224.     dbInfo.promptRunTime = document.rptDBLogon.PRT.checked;
  225. }
  226.  
  227. function updateDBSource()
  228. {
  229.     for (var i = 0; i < _numItems; i++)
  230.     {
  231.         var list = document.rptDBLogon.DS;
  232.         var dbInfo = dbInfoArray[i];
  233.         
  234.         document.rptDBLogon.elements["dbtype" + i].value = dbInfo.dbType;
  235.         document.rptDBLogon.elements["dbtypecustom" + i].value = dbInfo.dbTypeCustom;
  236.         document.rptDBLogon.elements["dbserver" + i].value = dbInfo.dsName;
  237.         document.rptDBLogon.elements["db" + i].value = dbInfo.db;
  238.         document.rptDBLogon.elements["logon" + i].value = dbInfo.logonName;
  239.         document.rptDBLogon.elements["pwd" + i].value = dbInfo.password;
  240.         document.rptDBLogon.elements["pvt" +i].value = dbInfo.promptRunTime;
  241.         document.rptDBLogon.elements["usedefault" + i].value = dbInfo.useDefault;
  242.         document.rptDBLogon.elements["dbdefaultuser" + i].value = dbInfo.defaultUser;
  243.         document.rptDBLogon.elements["dbdefaultpwd" + i].value = dbInfo.defaultPassword;
  244.     }
  245.  
  246.     document.forms.rptDBLogon.submit();
  247. }
  248.  
  249. </SCRIPT>
  250.  
  251. <FORM name="rptDBLogon" method=POST action="%2">
  252. <input type="hidden" name="dbnum" value="%3">
  253. <SPAN CLASS="listSelected">Set the default information for logging onto the data source(s) automatically whenever the report is run.</SPAN><BR>
  254. <BR>
  255. <TABLE border="0" cellpadding="5" cellspacing="5">
  256.   <TR>
  257.     <TD class="list" valign="top">
  258.       Data Source(s):<BR>
  259.       <SELECT class="menuFormElement" SIZE="12" NAME="DS" onchange="changeDataSource()">
  260.        
  261.        %1
  262.  
  263.       </SELECT>  
  264.     </TD>
  265.     <TD class="list" VALIGN="top">
  266.        <BR>
  267.       <TABLE border="0" cellpadding="0" cellspacing="0">
  268.       <TR>
  269.         <TD class="list" valign="top"><INPUT TYPE="radio" NAME="usedefdb" onclick="changeDefaultDB()" value="true"> </TD>
  270.         <TD class="list" valign="top" colspan=4>Use original database logon information from the report</TD>
  271.       </TR>
  272.       <TR>
  273.         <TD class="list" valign="top"> </TD>
  274.         <TD class="list" valign="top"> </TD>
  275.         <TD class="list" valign="middle" nowrap>Server: </TD>
  276.         <TD class="list" colspan=2 valign="top"><INPUT name="defserver" size=40 onChange="changeDefaultUser()" onfocus="removeNSFocus(true);" disabled></TD>
  277.       </TR>
  278.       <TR>
  279.         <TD class="list" valign="top"> </TD>
  280.         <TD class="list" valign="top"> </TD>
  281.         <TD class="list" valign="middle" nowrap>Database: </TD>
  282.         <TD class="list" colspan=2 valign="top"><INPUT name="defdatabase" size=40 onChange="changeDefaultUser()" onfocus="removeNSFocus(true);" disabled></TD>
  283.       </TR>
  284.       <TR>
  285.         <TD class="list" valign="top"> </TD>
  286.         <TD class="list" valign="top"> </TD>
  287.         <TD class="list" valign="middle" nowrap>User: </TD>
  288.         <TD class="list" colspan=2 valign="top"><INPUT name="defuser" size=40 onChange="changeDefaultUser()"></TD>
  289.       </TR>
  290.       <TR>
  291.         <TD class="list" valign="top"> </TD>
  292.         <TD class="list" valign="top"> </TD>
  293.         <TD class="list" valign="middle" nowrap>Password: </TD>
  294.         <TD class="list" colspan=2 valign="top"><INPUT name="defpassword" type="password" size=40 onChange="changeDefaultPwd()"></TD>
  295.       </TR>
  296.       <TR>
  297.         <TD class="list" colspan=5 valign="top"> </TD>
  298.       </TR>
  299.       <TR>
  300.         <TD class="list" valign="top"><INPUT TYPE="radio" NAME="usedefdb" onclick="changeDefaultDB()" value="false"> </TD>
  301.         <TD class="list" valign="top" colspan=4>Use custom database logon information specified here</TD>
  302.       </TR>
  303.       <TR>
  304.         <TD class="list" valign="top"> </TD>
  305.         <TD class="list" valign="top"> </TD>
  306.         <TD class="list" valign="top" nowrap> Database Type:</TD>
  307.         <TD class="list" valign="top"><INPUT TYPE="radio" NAME="radiodbdriver" value="false" onfocus="focusInput()" onclick="changeDriver();"> </TD>
  308.         <TD class="list" nowrap>Select a database driver</TD>
  309.       </TR>
  310.       <TR>
  311.         <TD class="list" colspan=4> </TD>
  312.         <TD class="list"><SELECT class="menuFormElement" size="1" name="dbdriver" onfocus="focusDBTypeSelect()" onchange="changeDriverSelect();">
  313.                             <OPTION name="ODBC" value="1" selected>ODBC</OPTION>
  314.                             <OPTION name="ORACLE" value="2">Oracle</OPTION>
  315.                             <OPTION name="DB2" value="3">DB2</OPTION>
  316.                             <OPTION name="SYBASE" value="4">Sybase</OPTION>
  317.                             <OPTION name="INFORMIX" value="5">Informix</OPTION>
  318.                             <OPTION name="SQL" value="6">SQL Server</OPTION>
  319.                         </SELECT>
  320.         </TD>
  321.       </TR>
  322.       <TR>
  323.         <TD class="list" colspan=3></TD>
  324.         <TD class="list"><INPUT type="radio" name="radiodbdriver" value="true" onfocus="focusInput()" onclick="changeDriver();"> </TD>
  325.         <TD class="list" nowrap>Specify a custom driver</TD>
  326.       </TR>
  327.       <TR>
  328.         <TD class="list" colspan=4> </TD>
  329.         <TD class="list"><INPUT name="customdbdriver" size=36 onfocus="focusDBTypeCustom()" onchange="changeDriverText();"></TD>
  330.       </TR>
  331.       <TR>
  332.         <TD class="list" colspan=5 valign="top"> </TD>
  333.       </TR>
  334.       <TR>
  335.         <TD class="list" colspan=2> </TD>
  336.         <TD class="list" valign="middle"> Server: </TD>
  337.         <TD class="list" valign="middle" colspan=2><INPUT NAME="DBS" SIZE="40" onfocus="focusInput()" onchange="changeServer();"></TD>
  338.       </TR>
  339.       <TR>
  340.         <TD class="list" colspan=2> </TD>
  341.         <TD class="list" valign="middle"> Database: </TD>
  342.         <TD class="list" valign="middle" colspan=2><INPUT NAME="DB" SIZE="40" onfocus="focusInput()" onchange="changeDB();"></TD>
  343.       </TR>
  344.       <TR>
  345.         <TD class="list" colspan=2> </TD>
  346.         <TD class="list" valign="middle"> User: </TD>
  347.         <TD class="list" valign="middle" colspan=2><INPUT NAME="USR" SIZE="40" onfocus="focusInput()" onchange="changeLogonName()"></TD>
  348.       </TR>
  349.       <TR>
  350.         <TD class="list" colspan=2> </TD>
  351.         <TD class="list" valign="middle"> Password: </TD>
  352.         <TD class="list" valign="middle" colspan=2><INPUT TYPE="password" NAME="PWD" SIZE="40" onfocus="focusInput()" onchange="changePassword()"></TD>
  353.       </TR>
  354.       <TR>
  355.         <TD class="list" colspan=5 valign="top"> </TD>
  356.       </TR>
  357.       </TABLE>
  358.      <INPUT TYPE="checkbox" NAME="PRT" onclick="changeRunTime()"> Prompt the user for database logon when viewing<BR>
  359.     </TD>
  360.   </TR>
  361.   <TR>
  362.     <td align="right" colspan="2">
  363.       <BR>
  364.       <table border=0 cellpadding=0>
  365.       <tr valign="middle">
  366.       <td class="clsButton" align=middle nowrap>
  367.       <div class="clsButton"><a href="javascript:updateDBSource();" onMouseOver="St(7);window.status='';return true;" onMouseOut="Ht()">Update</a></div>
  368.       </td>
  369.       <td class="clsButton" align=middle nowrap>
  370.       <div class="clsButton"><a href="%5" onMouseOver="St(8);window.status='';return true;" onMouseOut="Ht()">Reset</a></div>
  371.       </td>
  372.       </tr>
  373.       </table>
  374.     </td>
  375.   </TR>
  376. </TABLE>
  377.  
  378. %7
  379.  
  380. </FORM>
  381.  
  382.  
  383. </BODY>
  384. </HTML>
  385.